(deftemplate rower
	(slot rodzaj)
	(slot ilosc_blotnikow(type INTEGER))
	(slot swiatla)
	(slot stan_techniczny (allowed-values dobry przecietny beznadziejny) (default przecietny))
	(slot zapasowa_dentka (allowed-values tak nie))
	(slot latwy_w_naprawie (allowed-values tak nie) (default tak))
)

(deftemplate akcja_rowerzysty
	(slot typ_akcji)
)

(defrule jazda_w_nocy
	?o <- (osoba (nazwa ?naz) (szybkosc ?szy) (pojazd_mechaniczny ?pm) (wygoda ?wyg) (rodzaj_pojazdu ?rp) (polozenie ?pol))
	?akcja <- (akcja_rowerzysty (typ_akcji jazda))
	?bike <- (rower (swiatla nie))
	?pora <- (pora_dnia (czas noc))
	=>
	(modify ?o (szybkosc (- ?szy 25)))
	(modify ?akcja (typ_akcji prowadzi_rower_bo_ciemno))
	
	
)

(defrule jazda_w_deszczu
	?o <- (osoba (nazwa ?naz) (szybkosc ?szy) (pojazd_mechaniczny ?pm) (wygoda ?wyg) (rodzaj_pojazdu ?rp) (polozenie ?pol)(bezpieczenstwo ?bezp))
	?akcja <- (akcja_rowerzysty (typ_akcji jazda))
	?p <- (pogoda (typ deszcz))
	?pora <- (pora_dnia (czas noc))
	=>
	(modify ?o (szybkosc (- ?szy 15))(wygoda (- ?wyg 15)) (bezpieczenstwo (- ?bezp 30)))
	(modify ?akcja (typ_akcji prowadzi_rower_bo_ciemno))
	
)

(defrule jazda_w_upal
	?o <- (osoba (nazwa ?naz) (szybkosc ?szy) (koszt ?kosz)(pojazd_mechaniczny ?pm) (wygoda ?wyg) (rodzaj_pojazdu ?rp) (polozenie ?pol)(bezpieczenstwo ?bezp))
	?akcja <- (akcja_rowerzysty (typ_akcji jazda))
	?p <- (pogoda (typ upal))
	?pora <- (pora_dnia (czas poludnie))
	=>
	(modify ?o (szybkosc (- ?szy 5))(wygoda (- ?wyg 10)) (koszt (+ ?kosz 30)))
	;drogi krem z filtrem + woda
	(modify ?akcja (typ_akcji jedzie_zmeczony))
	
)


(defrule jazda_wieczorem
	?o <- (osoba (nazwa ?naz) (szybkosc ?szy) (koszt ?kosz)(pojazd_mechaniczny ?pm) (wygoda ?wyg) (rodzaj_pojazdu ?rp) (polozenie ?pol)(bezpieczenstwo ?bezp))
	?akcja <- (akcja_rowerzysty (typ_akcji jazda))
	?p <- (pogoda (typ zwykla))
	?pora <- (pora_dnia (czas wieczor))
	=>
	(modify ?o (szybkosc (+ ?szy 15))(wygoda (+ ?wyg 10)) )
	;pozytywnie wplywa na zrowie
	(modify ?akcja (typ_akcji jedzie_w_idealnych_warunkach))
	
)

(defrule odpoczynek_w_upal
	?akcja <- (akcja_rowerzysty (typ_akcji jedzie_zmeczony))
	=>
	(modify ?akcja (typ_akcji popija_wode))
	
)
(defrule jazda2_w_upal
	?akcja <- (akcja_rowerzysty (typ_akcji popija_wode))
	=>
	(modify ?akcja (typ_akcji jedzie_dalej_zmeczony))
	
)




